Assembly stackups of mechanical parts result in overall assembly lengths, clearance gaps, overlaps, and interferences. One or more of these assembly phenomena occurs in every mechanical design. In a typical manufacturing process, fabrication tolerances are assigned to part features which are involved in assembly stackups. Proper tolerancing of part features is important to achieve desired functional requirements that relate to physical variation. Tolerances establish the limits of variability in the size, location, and form of part features, and these limits should be maintained during manufacturing of a part feature.
The assignment of mechanical fabrication tolerances is a function of (1) the type of part feature, such as turned diameter, milled length, cast boss length, and injection-molded slot width, (2) manufacturing process capability for the type of part feature, (3) assembly stackup geometry and (4) allowable overall assembly stackup tolerance. Manufacturability considers the increased cost of manufacturing a part feature with more stringent tolerance. Consequently, the process of assigning tolerances for part features simultaneously relates to both the functionality and the manufacturability of designs.
Typical tolerancing approaches require a time-consuming iterative process of tolerance analysis, which is used to "home in" on tolerances that satisfy functional requirements. This iterative process of tolerance analysis involves (1) estimating appropriate tolerances for part features involved in an assembly stackup, based upon an engineer's subjective intuition and experience, and (2) analyzing the assembly stackup using a tolerance analysis model to determine if the estimated tolerances produce an undesired fit condition. If an undesired fit condition is produced, then the estimated tolerances are iteratively adjusted in an attempt to eliminate the undesired fit condition, and the tolerance analysis process is repeated until an appropriate assignment of tolerances is achieved.
Such iterative tolerancing approaches are subjective, relying upon a particular engineer's experience and training over a broad range of manufacturing processes. Consequently, the results of iterative tolerancing approaches vary significantly from one engineer to another, and an appropriate assignment of tolerances is uncertain even if an engineer has many years of experience. Moreover, iterative tolerancing approaches are very time-consuming. Thus, appropriate tolerances might not be achieved if development time is limited, resulting in undesired fit conditions and costly changes during production.
Also, a tolerance model is usually selected for part features in an assembly stackup. Available tolerance models include (1) worst case, (2) root sum squared ("RSS"), and (3) modified RSS ("MRSS"). Statistical tolerance models are less stringent and therefore less costly than worst case tolerance models, because statistical tolerance models recognize the probability that not all part feature dimensions of an assembly stackup will extend to their maximum limits of variability at the same time. Despite the availability of significant cost savings afforded by statistical tolerance models, worst case tolerances are nevertheless assigned to many non-critical parts, because previous approaches to determining statistical tolerances are iterative, time-consuming and uncertain. By assigning worst case tolerances to such non-critical parts, manufacturing costs are unnecessarily inflated because tolerances are overly stringent.
It is therefore desirable to simultaneously determine worst case and statistical tolerances in a non-iterative manner, in order to facilitate an informed selection between worst case, RSS, or MRSS tolerance models. It is also desirable to achieve a desired functional fit and manufacturability for the part features involved, without having to iteratively adjust estimated tolerances to repeat a tolerance analysis process. Such a non-iterative approach is typically referred to as "tolerance allocation". Tolerance allocation uses manufacturability (cost versus tolerance) data which quantify the increase in manufacturing cost necessary to achieve a more stringent tolerance.
Although the need for tolerance allocation has been previously identified, earlier approaches to tolerance allocation have proved impractical, because they commonly require full-range manufacturability data curves for a wide range of manufacturers, fabrication processes, and part features. Such full-range manufacturability data curves are difficult to obtain, and a large-scale expensive effort would be required to compile information necessary to create such full-range manufacturability data curves.
Thus, a need has arisen for a method and apparatus for allocating tolerances, in which tolerances are allocated in a non-iterative and standardized manner. Moreover, it is desired to provide a method and apparatus for allocating tolerances, in which functionality and manufacturability of a mechanical design are simultaneously considered, and in which worst case and statistical tolerances are simultaneously determined. Finally, a need has arisen for a method and apparatus for allocating tolerances which is based upon easily obtainable manufacturability data, and in which tolerance analysis is not required to verify functionality after tolerances are assigned.